-
Notifications
You must be signed in to change notification settings - Fork 83
Fix Image Loading for Podman in E2E Tests #377
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Hannah DeFazio <[email protected]>
Signed-off-by: Hannah DeFazio <[email protected]>
Signed-off-by: Hannah DeFazio <[email protected]>
containers: | ||
- name: epp | ||
image: ghcr.io/llm-d/llm-d-inference-scheduler:latest | ||
image: ${EPP_IMAGE} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change. The file as it was allows the YAML file to be used outside of the kind based tests.
|
||
images: | ||
- name: ghcr.io/llm-d/llm-d-inference-scheduler | ||
newTag: ${EPP_TAG} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change. The file as it was allows the YAML file to be used outside of the kind based tests.
initContainers: | ||
- name: routing-sidecar | ||
image: ghcr.io/llm-d/llm-d-routing-sidecar:latest | ||
image: ${ROUTING_SIDECAR_IMAGE} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change. The file as it was allows the YAML file to be used outside of the kind based tests.
containers: | ||
- name: vllm | ||
image: ghcr.io/llm-d/llm-d-inference-sim:latest | ||
image: ${VLLM_SIMULATOR_IMAGE} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change. The file as it was allows the YAML file to be used outside of the kind based tests.
- name: ghcr.io/llm-d/llm-d-inference-sim | ||
newTag: ${VLLM_SIMULATOR_TAG} | ||
- name: ghcr.io/llm-d/llm-d-routing-sidecar | ||
newTag: ${ROUTING_SIDECAR_TAG} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change. The file as it was allows the YAML file to be used outside of the kind based tests.
if docker image inspect ${VLLM_SIMULATOR_IMAGE} > /dev/null 2>&1; then | ||
echo "INFO: Loading image into KIND cluster..." | ||
kind --name ${CLUSTER_NAME} load docker-image ${IMAGE_REGISTRY}/${VLLM_SIMULATOR_IMAGE}:${VLLM_SIMULATOR_TAG} | ||
kind --name ${CLUSTER_NAME} load docker-image ${VLLM_SIMULATOR_IMAGE} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change due to other changes that are requested to be undone.
# Load the ext_proc endpoint-picker image into the cluster | ||
if [ "${CONTAINER_RUNTIME}" == "podman" ]; then | ||
podman save ${IMAGE_REGISTRY}/${EPP_IMAGE}:${EPP_TAG} -o /dev/stdout | kind --name ${CLUSTER_NAME} load image-archive /dev/stdin | ||
podman save ${EPP_IMAGE} -o /dev/stdout | kind --name ${CLUSTER_NAME} load image-archive /dev/stdin |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change due to other changes that are requested to be undone.
podman save ${EPP_IMAGE} -o /dev/stdout | kind --name ${CLUSTER_NAME} load image-archive /dev/stdin | ||
else | ||
kind --name ${CLUSTER_NAME} load docker-image ${IMAGE_REGISTRY}/${EPP_IMAGE}:${EPP_TAG} | ||
kind --name ${CLUSTER_NAME} load docker-image ${EPP_IMAGE} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change due to other changes that are requested to be undone.
| envsubst '${POOL_NAME} ${MODEL_NAME} ${MODEL_NAME_SAFE} ${EPP_NAME} ${EPP_TAG} ${VLLM_SIMULATOR_TAG} \ | ||
${PD_ENABLED} ${KV_CACHE_ENABLED} ${ROUTING_SIDECAR_TAG} \ | ||
| envsubst '${POOL_NAME} ${MODEL_NAME} ${MODEL_NAME_SAFE} ${EPP_NAME} ${EPP_IMAGE} ${VLLM_SIMULATOR_IMAGE} \ | ||
${PD_ENABLED} ${KV_CACHE_ENABLED} ${ROUTING_SIDECAR_IMAGE} \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change due to other changes that are requested to be undone.
|
||
# Default image registry for pulling deployment images | ||
export IMAGE_REGISTRY="${IMAGE_REGISTRY:-ghcr.io/llm-d}" | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo this change due to other changes that are requested to be undone.
Depends on #371
This PR fixes a critical issue where the end-to-end test suite was failing in environments using Podman due to how kind loads container images.
What this PR does / why we need it:
Previously, our tests used
kind load docker-image
to load test images into the Kind cluster. While this works for Docker, it is unreliable with Podman, especially in rootless environments. The command would fail with errors like "image not present locally" or "stat -: no such file or directory" because the test runner could not correctly connect to the user's Podman session or handle piped image data.This is a known issue with kind (see kubernetes-sigs/kind#2038 and kubernetes-sigs/kind#3105) and this pr implements the suggested workaround.
Testing: